﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DataTransferObject
{
    public class NamePair
    {
        public NamePair(String name, double value)
        {
            _name = name;
            _value = value;
        }
        private String _name;
        private double _value;

        public String Name
        {
            get { return _name; }
            set { _name = value; }
        }

        public double Value
        {
            get { return _value; }
            set { _value = value; }
        }
    }

    public class NameValue
    {
        List<NamePair> listNamePair = new List<NamePair>();
        public NameValue()
        {

        }
        public NameValue(String name, double value)
        {
            listNamePair.Add(new NamePair(name, value));
        }
        /// <summary>
        /// thêm giá trị vào danh sách
        /// </summary>
        /// <param name="name"></param>
        /// <param name="value"></param>
        public void addToList(String name, double value)
        {
            listNamePair.Add(new NamePair(name, value));
        }
        /// <summary>
        /// Lấy danh sách tên (chủ yếu dùng để build RE
        /// </summary>
        /// <returns>danh sách tên</returns>
        public List<String> getListName()
        {
            List<String> result = new List<String>();
            for (int i = 0; i < listNamePair.Count; i++)
            {
                result.Add(listNamePair[i].Name);
            }
            return result;
        }
        /// <summary>
        /// Lấy giá trị của tên. ví dụ: ngày mai: 1440 minutes
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public double getValue(String name)
        {
            int result = 12;
            name = name.Trim();
            if (name != "")
            {
                for (int i = 0; i < listNamePair.Count; i++)
                {
                    if (listNamePair[i].Name.Equals(name))
                        return listNamePair[i].Value;
                }
            }

            return result;
        }
    }
}
